function sumAll(arr) { arr.sort(); let lum = []; for (let i = arr[1]; i > arr[0]; i--) { lum.push(arr[i]); } return lum; } console.log(sumAll([1, 4])); Quiero que mi código haga 4-3, luego agregue el resultado a lum y así sucesivamente hasta que llegue a 1, pero estoy atascado en este punto. No sé por qué devuelve undefined .
Estás presionando arr[i] en el resultado:
lum.push(arr[i]); Entonces, por ejemplo, cuando i es 4 (porque arr[1] es 4), ¿cuál es el valor arr[4] que estás empujando al resultado? No está undefined en la matriz proporcionada. ¿Sospecho que querías empujar i al resultado?:
lum.push(i);Por ejemplo:
function sumAll(arr) { arr.sort(); let lum = []; for (let i = arr[1]; i > arr[0]; i--) { lum.push(i); } return lum; } console.log(sumAll([1, 4]));